package com.guochu.pro.service;

import com.guochu.pro.entity.Transaction;
import com.guochu.pro.entity.TransactionVO;
import com.guochu.utils.Pagination;
import java.util.List;
import java.util.Map;

/**
 * 产品分类表(Transaction)表服务接口
 *
 * @author makejava
 * @since 2021-11-04 00:02:39
 */
public interface TransactionService {

    /**
     * 添加单条记录
     *
     * @param transaction 实例对象
     * @return
     */
    int insert(Transaction transaction);
    
    /**
     * 修改单条记录
     *
     * @param transaction 实例对象
     * @return
     */
    int update(Transaction transaction);
    
    /**
     * 逻辑删除多条记录
     *
     * @param idList 主键
     * @return
     */
    int removeByIds(List<String> idList);
    
    /**
     * 通过主键ID查询单条数据
     *
     * @param id 主键
     * @return 单条数据
     */
    Transaction queryById(String id);

    /**
     * 根据条件查询分页数据
     *
     * @param pagination 分页条件
     * @param limit 查询条件
     * @return 分页数据
     */
    List<TransactionVO> queryPageByLimit(Pagination pagination, Map<String, Object> limit);

    /**
     * 根据条件查询全部数据
     *
     * @param limit 查询条件
     * @return 所有数据
     */
    List<Transaction> queryAllByLimit(Map<String, Object> limit);
}
